Conventional databases typically use logging to store operations performed on corresponding data in a synchronous fashion to a log while, at the same time, writing data to a corresponding data area asynchronously. In cases of a crash or other data recovery event, the data area is recovered to a potentially older state. Replaying the log will bring the database to the last committed state. Single threaded execution to replay the log can cause significant delays especially in cases where there are numerous smaller transactions such as with OLTP.